home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / ResEdit™ 3.0d1 / ResEdit™ 3.0d1 / ResEdit™ 3.0d1.rsrc / CODE_1_PPCOnly.txt < prev    next >
Text File  |  1996-04-23  |  67KB  |  1,252 lines

  1. # near model CODE resource
  2. # jump table entries: 0-1 (2 of them)
  3. fn00000000:
  4. 00000000  4E56 FEF8                link       A6, -0x0108
  5. 00000004  48E7 0118                movem.l    -[A7], D7,A3,A4
  6. 00000008  49EE FF00                lea.l      A4, [A6 - 0x100]
  7. 0000000C  486D FEC6                pea.l      [A5 - 0x13A]
  8. 00000010  A86E                     syscall    InitGraf
  9. 00000012  A8FE                     syscall    InitFonts
  10. 00000014  A912                     syscall    InitWindows
  11. 00000016  A930                     syscall    InitMenus
  12. 00000018  A9CC                     syscall    TEInit
  13. 0000001A  7000                     moveq.l    D0, 0x00
  14. 0000001C  2F00                     move.l     -[A7], D0
  15. 0000001E  A97B                     syscall    InitDialogs
  16. 00000020  A850                     syscall    InitCursor
  17. 00000022  486D FE5A                pea.l      [A5 - 0x1A6]
  18. 00000026  A851                     syscall    SetCursor
  19. 00000028  598F                     subq.l     A7, 4
  20. 0000002A  2F3C 414C 5254           move.l     -[A7], 0x414C5254 /* 'ALRT' */
  21. 00000030  3F3C 6AAD                move.w     -[A7], 0x6AAD
  22. 00000034  A9A0                     syscall    GetResource
  23. 00000036  265F                     movea.l    A3, [A7]+
  24. 00000038  200B                     move.l     D0, A3
  25. 0000003A  6714                     beq        +0x16 /* 00000050 */
  26. 0000003C  598F                     subq.l     A7, 4
  27. 0000003E  2F3C 4449 544C           move.l     -[A7], 0x4449544C /* 'DITL' */
  28. 00000044  2053                     movea.l    A0, [A3]
  29. 00000046  3F28 0008                move.w     -[A7], [A0 + 0x8]
  30. 0000004A  A9A0                     syscall    GetResource
  31. 0000004C  2D5F FEFC                move.l     [A6 - 0x104], [A7]+
  32. label00000050:
  33. 00000050  558F                     subq.l     A7, 2
  34. 00000052  2F3C 7379 7361           move.l     -[A7], 0x73797361 /* 'sysa' */
  35. 00000058  486E FEF8                pea.l      [A6 - 0x108]
  36. 0000005C  4EBA 082C                jsr        [PC + 0x82C /* 0000088A */]
  37. 00000060  3E1F                     move.w     D7, [A7]+
  38. 00000062  6608                     bne        +0xA /* 0000006C */
  39. 00000064  7001                     moveq.l    D0, 0x01
  40. 00000066  B0AE FEF8                cmp.l      D0, [A6 - 0x108]
  41. 0000006A  6610                     bne        +0x12 /* 0000007C */
  42. label0000006C:
  43. 0000006C  2F0C                     move.l     -[A7], A4
  44. 0000006E  3F3C 6AAD                move.w     -[A7], 0x6AAD
  45. 00000072  7001                     moveq.l    D0, 0x01
  46. 00000074  3F00                     move.w     -[A7], D0
  47. 00000076  4EBA 07CC                jsr        [PC + 0x7CC /* 00000844 */]
  48. 0000007A  600E                     bra        +0x10 /* 0000008A */
  49. label0000007C:
  50. 0000007C  2F0C                     move.l     -[A7], A4
  51. 0000007E  3F3C 6AAD                move.w     -[A7], 0x6AAD
  52. 00000082  7002                     moveq.l    D0, 0x02
  53. 00000084  3F00                     move.w     -[A7], D0
  54. 00000086  4EBA 07BC                jsr        [PC + 0x7BC /* 00000844 */]
  55. label0000008A:
  56. 0000008A  200B                     move.l     D0, A3
  57. 0000008C  672E                     beq        +0x30 /* 000000BC */
  58. 0000008E  4AAE FEFC                tst.l      [A6 - 0x104]
  59. 00000092  6728                     beq        +0x2A /* 000000BC */
  60. 00000094  7000                     moveq.l    D0, 0x00
  61. 00000096  1014                     move.b     D0, [A4]
  62. 00000098  4A80                     tst.l      D0
  63. 0000009A  6720                     beq        +0x22 /* 000000BC */
  64. 0000009C  2F0C                     move.l     -[A7], A4
  65. 0000009E  486D FDF6                pea.l      [A5 - 0x20A]
  66. 000000A2  486D FDF8                pea.l      [A5 - 0x208]
  67. 000000A6  486D FDFA                pea.l      [A5 - 0x206]
  68. 000000AA  A98B                     syscall    ParamText
  69. 000000AC  558F                     subq.l     A7, 2
  70. 000000AE  3F3C 6AAD                move.w     -[A7], 0x6AAD
  71. 000000B2  7000                     moveq.l    D0, 0x00
  72. 000000B4  2F00                     move.l     -[A7], D0
  73. 000000B6  A985                     syscall    Alert
  74. 000000B8  3E1F                     move.w     D7, [A7]+
  75. 000000BA  6006                     bra        +0x8 /* 000000C2 */
  76. label000000BC:
  77. 000000BC  7002                     moveq.l    D0, 0x02
  78. 000000BE  3F00                     move.w     -[A7], D0
  79. 000000C0  A9C8                     syscall    SysBeep
  80. label000000C2:
  81. 000000C2  4CEE 1880 FEEC           movem.l    D7,A3,A4, [A6 - 0x114]
  82. 000000C8  4E5E                     unlink     A6
  83. 000000CA  4E75                     rts
  84. 000000CC  846D 6169                or.w       D2, [A5 + 0x6169]
  85. 000000D0  6E00 0000                bgt        +0x2 /* 000000D2 */
  86. // begin alternate branch 000000D2-000000E8
  87. label000000D2:
  88. 000000D2  0000 222F                ori.b      D0, 0x2F /* '/' */
  89. 000000D6  0004 202F                ori.b      D4, 0x2F /* '/' */
  90. 000000DA  0008 41FA                ori.b      A0, 0xFA
  91. fn000000DC: // (misaligned)
  92. 000000DE  000A 327C                ori.b      A2, 0x7C /* '|' */
  93. 000000E2  0002 4EF0                ori.b      D2, 0xF0
  94. 000000E6  92FE                     sub.w      A1, <<invalid special address>>
  95. // end alternate branch 000000D2-000000E8
  96. label000000D2: // (misaligned)
  97. 000000D4  222F 0004                move.l     D1, [A7 + 0x4]
  98. 000000D8  202F 0008                move.l     D0, [A7 + 0x8]
  99. fn000000DC:
  100. 000000DC  41FA 000A                lea.l      A0, [PC + 0xA /* 000000E8, value 0x60064C41 */]
  101. 000000E0  327C 0002                movea.w    A1, 0x2
  102. 000000E4  4EF0 92FE                jmp        [A0 + A1.w * 2 - 0x2]
  103. 000000E8  6006                     bra        +0x8 /* 000000F0 */
  104. 000000EA  4C41 0801                movem.l    D0,A3, D1
  105. 000000EE  4E75                     rts
  106. label000000F0:
  107. 000000F0  4EBA 0024                jsr        [PC + 0x24 /* 00000116 */]
  108. 000000F4  2001                     move.l     D0, D1
  109. 000000F6  4E75                     rts
  110. 000000F8  222F 0004                move.l     D1, [A7 + 0x4]
  111. 000000FC  202F 0008                move.l     D0, [A7 + 0x8]
  112. 00000100  41FA 000A                lea.l      A0, [PC + 0xA /* 0000010C, value 0x60084C41 */]
  113. 00000104  327C 0002                movea.w    A1, 0x2
  114. 00000108  4EF0 92FE                jmp        [A0 + A1.w * 2 - 0x2]
  115. 0000010C  6008                     bra        +0xA /* 00000116 */
  116. 0000010E  4C41 0801                movem.l    D0,A3, D1
  117. 00000112  C340                     exg        D1, D0
  118. 00000114  4E75                     rts
  119. fn00000116:
  120. 00000116  4A80                     tst.l      D0
  121. 00000118  6B14                     bmi        +0x16 /* 0000012E */
  122. 0000011A  4A81                     tst.l      D1
  123. 0000011C  6B06                     bmi        +0x8 /* 00000124 */
  124. 0000011E  4EBA 0046                jsr        [PC + 0x46 /* 00000166 */]
  125. 00000122  4E75                     rts
  126. label00000124:
  127. 00000124  4481                     neg.l      D1
  128. 00000126  4EBA 003E                jsr        [PC + 0x3E /* 00000166 */]
  129. 0000012A  4481                     neg.l      D1
  130. 0000012C  4E75                     rts
  131. label0000012E:
  132. 0000012E  4480                     neg.l      D0
  133. 00000130  4A81                     tst.l      D1
  134. 00000132  6B0A                     bmi        +0xC /* 0000013E */
  135. 00000134  4EBA 0030                jsr        [PC + 0x30 /* 00000166 */]
  136. 00000138  4480                     neg.l      D0
  137. 0000013A  4481                     neg.l      D1
  138. 0000013C  4E75                     rts
  139. label0000013E:
  140. 0000013E  4481                     neg.l      D1
  141. 00000140  4EBA 0024                jsr        [PC + 0x24 /* 00000166 */]
  142. 00000144  4480                     neg.l      D0
  143. 00000146  4E75                     rts
  144. 00000148  222F 0004                move.l     D1, [A7 + 0x4]
  145. 0000014C  202F 0008                move.l     D0, [A7 + 0x8]
  146. 00000150  41FA 000A                lea.l      A0, [PC + 0xA /* 0000015C, value 0x60084C41 */]
  147. 00000154  327C 0002                movea.w    A1, 0x2
  148. 00000158  4EF0 92FE                jmp        [A0 + A1.w * 2 - 0x2]
  149. 0000015C  6008                     bra        +0xA /* 00000166 */
  150. 0000015E  4C41 0001                movem.l    D0, D1
  151. 00000162  C340                     exg        D1, D0
  152. 00000164  4E75                     rts
  153. fn00000166:
  154. 00000166  3F01                     move.w     -[A7], D1
  155. 00000168  4841                     swap.w     D1
  156. 0000016A  4A41                     tst.w      D1
  157. 0000016C  661C                     bne        +0x1E /* 0000018A */
  158. 0000016E  2200                     move.l     D1, D0
  159. 00000170  4241                     clr.w      D1
  160. 00000172  4841                     swap.w     D1
  161. 00000174  670A                     beq        +0xC /* 00000180 */
  162. 00000176  82D7                     divu.w     D1, [A7]
  163. 00000178  4841                     swap.w     D1
  164. 0000017A  4840                     swap.w     D0
  165. 0000017C  3001                     move.w     D0, D1
  166. 0000017E  4840                     swap.w     D0
  167. label00000180:
  168. 00000180  80DF                     divu.w     D0, [A7]+
  169. 00000182  3200                     move.w     D1, D0
  170. 00000184  4240                     clr.w      D0
  171. 00000186  4840                     swap.w     D0
  172. 00000188  4E75                     rts
  173. label0000018A:
  174. 0000018A  4841                     swap.w     D1
  175. 0000018C  3E82                     move.w     [A7], D2
  176. 0000018E  2F03                     move.l     -[A7], D3
  177. 00000190  3400                     move.w     D2, D0
  178. 00000192  2601                     move.l     D3, D1
  179. 00000194  7201                     moveq.l    D1, 0x01
  180. 00000196  4240                     clr.w      D0
  181. 00000198  4840                     swap.w     D0
  182. 0000019A  660C                     bne        +0xE /* 000001A8 */
  183. 0000019C  4840                     swap.w     D0
  184. 0000019E  3002                     move.w     D0, D2
  185. 000001A0  7200                     moveq.l    D1, 0x00
  186. 000001A2  6016                     bra        +0x18 /* 000001BA */
  187. label000001A4:
  188. 000001A4  D241                     add.w      D1, D1
  189. 000001A6  6512                     bcs        +0x14 /* 000001BA */
  190. label000001A8:
  191. 000001A8  D442                     add.w      D2, D2
  192. 000001AA  D180                     addx.l     D0, D0
  193. 000001AC  B083                     cmp.l      D0, D3
  194. 000001AE  65F4                     bcs        -0xA /* 000001A4 */
  195. 000001B0  9083                     sub.l      D0, D3
  196. 000001B2  D241                     add.w      D1, D1
  197. 000001B4  08C1 0000                bset.b     D1, 0x0
  198. 000001B8  64EE                     bcc        -0x10 /* 000001A8 */
  199. label000001BA:
  200. 000001BA  261F                     move.l     D3, [A7]+
  201. 000001BC  341F                     move.w     D2, [A7]+
  202. 000001BE  4E75                     rts
  203. fn000001C0:
  204. 000001C0  225F                     movea.l    A1, [A7]+
  205. 000001C2  2057                     movea.l    A0, [A7]
  206. 000001C4  48D0 DEFC                movem.l    [A0], D2,D3,D4,D5,D6,D7,A1,A2,A3,A4,A6,A7
  207. 000001C8  7000                     moveq.l    D0, 0x00
  208. 000001CA  4ED1                     jmp        [A1]
  209. fn000001CC:
  210. 000001CC  202F 0008                move.l     D0, [A7 + 0x8]
  211. 000001D0  6602                     bne        +0x4 /* 000001D4 */
  212. 000001D2  7001                     moveq.l    D0, 0x01
  213. label000001D4:
  214. 000001D4  206F 0004                movea.l    A0, [A7 + 0x4]
  215. 000001D8  4CD0 DEFC                movem.l    D2,D3,D4,D5,D6,D7,A1,A2,A3,A4,A6,A7, [A0]
  216. 000001DC  4ED1                     jmp        [A1]
  217. fn000001DE:
  218. 000001DE  4E56 FFFC                link       A6, -0x0004
  219. 000001E2  48E7 0318                movem.l    -[A7], D6,D7,A3,A4
  220. 000001E6  4A6D FECC                tst.w      [A5 - 0x134]
  221. 000001EA  6600 00BC                bne        +0xBE /* 000002A8 */
  222. 000001EE  598F                     subq.l     A7, 4
  223. 000001F0  2F3C 434F 4445           move.l     -[A7], 0x434F4445 /* 'CODE' */
  224. 000001F6  487A 00C8                pea.l      [PC + 0xC8 /* 000002C0, value 0x28255F53 '(%_S', pstring "%_Static_Constructor_Destructor_Pointers" */]
  225. 000001FA  A820                     syscall    Get1NamedResource
  226. 000001FC  285F                     movea.l    A4, [A7]+
  227. 000001FE  200C                     move.l     D0, A4
  228. 00000200  6700 00A6                beq        +0xA8 /* 000002A8 */
  229. 00000204  558F                     subq.l     A7, 2
  230. 00000206  A994                     syscall    CurResFile
  231. 00000208  558F                     subq.l     A7, 2
  232. 0000020A  2F0C                     move.l     -[A7], A4
  233. 0000020C  A9A4                     syscall    HomeResFile
  234. 0000020E  301F                     move.w     D0, [A7]+
  235. 00000210  B05F                     cmp.w      D0, [A7]+
  236. 00000212  6600 0094                bne        +0x96 /* 000002A8 */
  237. 00000216  41ED 002A                lea.l      A0, [A5 + 0x2A /* export_1 */]
  238. 0000021A  226D FEE8                movea.l    A1, [A5 - 0x118]
  239. 0000021E  2348 000C                move.l     [A1 + 0xC], A0
  240. 00000222  2654                     movea.l    A3, [A4]
  241. 00000224  3013                     move.w     D0, [A3]
  242. 00000226  0800 0000                btst.b     D0, 0x0
  243. 0000022A  6708                     beq        +0xA /* 00000234 */
  244. 0000022C  3B7C 0028 FECA           move.w     [A5 - 0x136], 0x28 /* '(' */
  245. 00000232  6006                     bra        +0x8 /* 0000023A */
  246. label00000234:
  247. 00000234  3B7C 0004 FECA           move.w     [A5 - 0x136], 0x4
  248. label0000023A:
  249. 0000023A  598F                     subq.l     A7, 4
  250. 0000023C  2F0C                     move.l     -[A7], A4
  251. 0000023E  4EBA 05F6                jsr        [PC + 0x5F6 /* 00000836 */]
  252. 00000242  302D FECA                move.w     D0, [A5 - 0x136]
  253. 00000246  48C0                     ext.l      D0
  254. 00000248  221F                     move.l     D1, [A7]+
  255. 0000024A  9280                     sub.l      D1, D0
  256. 0000024C  2001                     move.l     D0, D1
  257. 0000024E  7204                     moveq.l    D1, 0x04
  258. 00000250  4EBA FE8A                jsr        [PC - 0x176 /* 000000DC */]
  259. 00000254  2C00                     move.l     D6, D0
  260. 00000256  7000                     moveq.l    D0, 0x00
  261. 00000258  2640                     movea.l    A3, D0
  262. 0000025A  6036                     bra        +0x38 /* 00000292 */
  263. label0000025C:
  264. 0000025C  2F0C                     move.l     -[A7], A4
  265. 0000025E  A9A2                     syscall    LoadResource
  266. 00000260  302D FECA                move.w     D0, [A5 - 0x136]
  267. 00000264  48C0                     ext.l      D0
  268. 00000266  D094                     add.l      D0, [A4]
  269. 00000268  2D40 FFFC                move.l     [A6 - 0x4], D0
  270. 0000026C  302D FECC                move.w     D0, [A5 - 0x134]
  271. 00000270  48C0                     ext.l      D0
  272. 00000272  206E FFFC                movea.l    A0, [A6 - 0x4]
  273. 00000276  E580                     asl        D0, 2
  274. 00000278  3030 0800                move.w     D0, [A0 + D0]
  275. 0000027C  48C0                     ext.l      D0
  276. 0000027E  2E00                     move.l     D7, D0
  277. 00000280  6708                     beq        +0xA /* 0000028A */
  278. 00000282  200D                     move.l     D0, A5
  279. 00000284  2640                     movea.l    A3, D0
  280. 00000286  D7C7                     add.l      A3, D7
  281. 00000288  4E93                     jsr        [A3]
  282. label0000028A:
  283. 0000028A  302D FECC                move.w     D0, [A5 - 0x134]
  284. 0000028E  526D FECC                addq.w     [A5 - 0x134], 1
  285. label00000292:
  286. 00000292  302D FECC                move.w     D0, [A5 - 0x134]
  287. 00000296  48C0                     ext.l      D0
  288. 00000298  BC80                     cmp.l      D6, D0
  289. 0000029A  6EC0                     bgt        -0x3E /* 0000025C */
  290. 0000029C  200B                     move.l     D0, A3
  291. 0000029E  6704                     beq        +0x6 /* 000002A4 */
  292. 000002A0  2F0B                     move.l     -[A7], A3
  293. 000002A2  A9F1                     syscall    UnloadSeg
  294. label000002A4:
  295. 000002A4  2F0C                     move.l     -[A7], A4
  296. 000002A6  A9A3                     syscall    ReleaseResource
  297. label000002A8:
  298. 000002A8  4CEE 18C0 FFEC           movem.l    D6,D7,A3,A4, [A6 - 0x14]
  299. 000002AE  4E5E                     unlink     A6
  300. 000002B0  4E75                     rts
  301. 000002B2  8B5F                     or.w       [A7]+, D5
  302. 000002B4  5F43                     subq.w     D3, 7
  303. 000002B6  706C                     moveq.l    D0, 0x6C
  304. 000002B8  7573                     moveq.l    D2, 0x73
  305. 000002BA  496E 6974                chk.w      D4, [A6 + 0x6974]
  306. 000002BE  002A 2825 5F53           ori.b      [A2 + 0x5F53], 0x25 /* '%' */
  307. 000002C4  7461                     moveq.l    D2, 0x61
  308. 000002C6  7469                     moveq.l    D2, 0x69
  309. 000002C8  635F                     bls        +0x61 /* 00000329 */
  310. 000002CA  436F 6E73                chk.w      D1, [A7 + 0x6E73]
  311. 000002CE  7472                     moveq.l    D2, 0x72
  312. 000002D0  7563                     moveq.l    D2, 0x63
  313. 000002D2  746F                     moveq.l    D2, 0x6F
  314. 000002D4  725F                     moveq.l    D1, 0x5F
  315. 000002D6  4465                     neg.w      -[A5]
  316. 000002D8  7374                     moveq.l    D1, 0x74
  317. 000002DA  7275                     moveq.l    D1, 0x75
  318. 000002DC  6374                     bls        +0x76 /* 00000352 */
  319. 000002DE  6F72                     ble        +0x74 /* 00000352 */
  320. 000002E0  5F50                     subq.w     [A0], 7
  321. 000002E2  6F69                     ble        +0x6B /* 0000034D */
  322. 000002E4  6E74                     bgt        +0x76 /* 0000035A */
  323. 000002E6  6572                     bcs        +0x74 /* 0000035A */
  324. 000002E8  7300                     moveq.l    D1, 0x00
  325. export_1:
  326. 000002EA  4E56 FFFC                link       A6, -0x0004
  327. 000002EE  48E7 0118                movem.l    -[A7], D7,A3,A4
  328. 000002F2  4A6D FECC                tst.w      [A5 - 0x134]
  329. 000002F6  6764                     beq        +0x66 /* 0000035C */
  330. 000002F8  598F                     subq.l     A7, 4
  331. 000002FA  2F3C 434F 4445           move.l     -[A7], 0x434F4445 /* 'CODE' */
  332. 00000300  487A 0070                pea.l      [PC + 0x70 /* 00000372, value 0x28255F53 '(%_S', pstring "%_Static_Constructor_Destructor_Pointers" */]
  333. 00000304  A9A1                     syscall    GetNamedResource
  334. 00000306  285F                     movea.l    A4, [A7]+
  335. 00000308  200C                     move.l     D0, A4
  336. 0000030A  6750                     beq        +0x52 /* 0000035C */
  337. 0000030C  558F                     subq.l     A7, 2
  338. 0000030E  A994                     syscall    CurResFile
  339. 00000310  558F                     subq.l     A7, 2
  340. 00000312  2F0C                     move.l     -[A7], A4
  341. 00000314  A9A4                     syscall    HomeResFile
  342. 00000316  301F                     move.w     D0, [A7]+
  343. 00000318  B05F                     cmp.w      D0, [A7]+
  344. 0000031A  6640                     bne        +0x42 /* 0000035C */
  345. 0000031C  6034                     bra        +0x36 /* 00000352 */
  346. label0000031E:
  347. 0000031E  2F0C                     move.l     -[A7], A4
  348. 00000320  A9A2                     syscall    LoadResource
  349. 00000322  302D FECA                move.w     D0, [A5 - 0x136]
  350. 00000326  48C0                     ext.l      D0
  351. 00000328  D094                     add.l      D0, [A4]
  352. 0000032A  2D40 FFFC                move.l     [A6 - 0x4], D0
  353. 0000032E  536D FECC                subq.w     [A5 - 0x134], 1
  354. 00000332  302D FECC                move.w     D0, [A5 - 0x134]
  355. 00000336  48C0                     ext.l      D0
  356. 00000338  206E FFFC                movea.l    A0, [A6 - 0x4]
  357. 0000033C  E580                     asl        D0, 2
  358. 0000033E  3030 0802                move.w     D0, [A0 + D0 + 0x2]
  359. 00000342  48C0                     ext.l      D0
  360. 00000344  2E00                     move.l     D7, D0
  361. 00000346  200D                     move.l     D0, A5
  362. 00000348  2640                     movea.l    A3, D0
  363. 0000034A  D7C7                     add.l      A3, D7
  364. 0000034C  4A87                     tst.l      D7
  365. 0000034E  6702                     beq        +0x4 /* 00000352 */
  366. 00000350  4E93                     jsr        [A3]
  367. label00000352:
  368. 00000352  4A6D FECC                tst.w      [A5 - 0x134]
  369. 00000356  6EC6                     bgt        -0x38 /* 0000031E */
  370. 00000358  2F0C                     move.l     -[A7], A4
  371. label0000035A:
  372. 0000035A  A9A3                     syscall    ReleaseResource
  373. label0000035C:
  374. 0000035C  4CEE 1880 FFF0           movem.l    D7,A3,A4, [A6 - 0x10]
  375. 00000362  4E5E                     unlink     A6
  376. 00000364  4E75                     rts
  377. 00000366  8964                     or.w       -[A4], D4
  378. 00000368  746F                     moveq.l    D2, 0x6F
  379. 0000036A  7273                     moveq.l    D1, 0x73
  380. 0000036C  5F5F                     subq.w     [A7]+, 7
  381. 0000036E  4676 002A                not.w      [A6 + D0.w + 0x2A]
  382. 00000372  2825                     move.l     D4, -[A5]
  383. 00000374  5F53                     subq.w     [A3], 7
  384. 00000376  7461                     moveq.l    D2, 0x61
  385. 00000378  7469                     moveq.l    D2, 0x69
  386. 0000037A  635F                     bls        +0x61 /* 000003DB */
  387. 0000037C  436F 6E73                chk.w      D1, [A7 + 0x6E73]
  388. 00000380  7472                     moveq.l    D2, 0x72
  389. 00000382  7563                     moveq.l    D2, 0x63
  390. 00000384  746F                     moveq.l    D2, 0x6F
  391. 00000386  725F                     moveq.l    D1, 0x5F
  392. 00000388  4465                     neg.w      -[A5]
  393. 0000038A  7374                     moveq.l    D1, 0x74
  394. 0000038C  7275                     moveq.l    D1, 0x75
  395. 0000038E  6374                     bls        +0x76 /* 00000404 */
  396. 00000390  6F72                     ble        +0x74 /* 00000404 */
  397. 00000392  5F50                     subq.w     [A0], 7
  398. 00000394  6F69                     ble        +0x6B /* 000003FF */
  399. 00000396  6E74                     bgt        +0x76 /* 0000040C */
  400. 00000398  6572                     bcs        +0x74 /* 0000040C */
  401. 0000039A  7300                     moveq.l    D1, 0x00
  402. fn0000039C:
  403. 0000039C  4E56 0000                link       A6, 0
  404. 000003A0  48E7 1338                movem.l    -[A7], D3,D6,D7,A2,A3,A4
  405. 000003A4  2E2E 0018                move.l     D7, [A6 + 0x18]
  406. 000003A8  266E 000C                movea.l    A3, [A6 + 0xC]
  407. 000003AC  4EBA 02DA                jsr        [PC + 0x2DA /* 00000688 */]
  408. 000003B0  4A80                     tst.l      D0
  409. 000003B2  6706                     beq        +0x8 /* 000003BA */
  410. 000003B4  70FF                     moveq.l    D0, 0xFFFFFFFF
  411. 000003B6  6000 01C8                bra        +0x1CA /* 00000580 */
  412. label000003BA:
  413. 000003BA  206D FEE8                movea.l    A0, [A5 - 0x118]
  414. 000003BE  20AE 0008                move.l     [A0], [A6 + 0x8]
  415. 000003C2  7601                     moveq.l    D3, 0x01
  416. 000003C4  4AB8 0316                tst.l      [0x00000316 /* HpChk/MacPgm */]
  417. 000003C8  672C                     beq        +0x2E /* 000003F6 */
  418. 000003CA  7001                     moveq.l    D0, 0x01
  419. 000003CC  C0B8 0316                and.l      D0, [0x00000316 /* HpChk/MacPgm */]
  420. 000003D0  6624                     bne        +0x26 /* 000003F6 */
  421. 000003D2  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  422. 000003D6  0C90 4D50 474D           cmpi.l     [A0], 0x4D50474D /* 'MPGM' */
  423. 000003DC  6618                     bne        +0x1A /* 000003F6 */
  424. 000003DE  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  425. 000003E2  4AA8 0004                tst.l      [A0 + 0x4]
  426. 000003E6  670E                     beq        +0x10 /* 000003F6 */
  427. 000003E8  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  428. 000003EC  2068 0004                movea.l    A0, [A0 + 0x4]
  429. 000003F0  4A50                     tst.w      [A0]
  430. 000003F2  6702                     beq        +0x4 /* 000003F6 */
  431. 000003F4  7600                     moveq.l    D3, 0x00
  432. label000003F6:
  433. 000003F6  4883                     ext.w      D3
  434. 000003F8  48C3                     ext.l      D3
  435. 000003FA  2B43 FECE                move.l     [A5 - 0x132], D3
  436. 000003FE  6760                     beq        +0x62 /* 00000460 */
  437. 00000400  41ED FFA2                lea.l      A0, [A5 - 0x5E]
  438. label00000404:
  439. 00000404  43F8 0910                lea.l      A1, [0x00000910 /* CurApName */]
  440. 00000408  7007                     moveq.l    D0, 0x07
  441. label0000040A:
  442. 0000040A  20D9                     move.l     [A0]+, [A1]+
  443. label0000040C:
  444. 0000040C  51C8 FFFC                dbf        D0, -0x6 /* 0000040A */
  445. 00000410  30D9                     move.w     [A0]+, [A1]+
  446. 00000412  41ED FFA2                lea.l      A0, [A5 - 0x5E]
  447. 00000416  226D FED8                movea.l    A1, [A5 - 0x128]
  448. 0000041A  2288                     move.l     [A1], A0
  449. 0000041C  4A87                     tst.l      D7
  450. 0000041E  660E                     bne        +0x10 /* 0000042E */
  451. 00000420  598F                     subq.l     A7, 4
  452. 00000422  206D FED8                movea.l    A0, [A5 - 0x128]
  453. 00000426  2F10                     move.l     -[A7], [A0]
  454. 00000428  4EBA 06A4                jsr        [PC + 0x6A4 /* 00000ACE */]
  455. 0000042C  584F                     addq.w     A7, 4
  456. label0000042E:
  457. 0000042E  200B                     move.l     D0, A3
  458. 00000430  6704                     beq        +0x6 /* 00000436 */
  459. 00000432  7001                     moveq.l    D0, 0x01
  460. 00000434  2680                     move.l     [A3], D0
  461. label00000436:
  462. 00000436  4AAE 0010                tst.l      [A6 + 0x10]
  463. 0000043A  6708                     beq        +0xA /* 00000444 */
  464. 0000043C  206E 0010                movea.l    A0, [A6 + 0x10]
  465. 00000440  20AD FED8                move.l     [A0], [A5 - 0x128]
  466. label00000444:
  467. 00000444  4AAE 0014                tst.l      [A6 + 0x14]
  468. 00000448  6708                     beq        +0xA /* 00000452 */
  469. 0000044A  206E 0014                movea.l    A0, [A6 + 0x14]
  470. 0000044E  20AD FEDC                move.l     [A0], [A5 - 0x124]
  471. label00000452:
  472. 00000452  4EBA FD8A                jsr        [PC - 0x276 /* 000001DE */]
  473. 00000456  7001                     moveq.l    D0, 0x01
  474. 00000458  2B40 FECE                move.l     [A5 - 0x132], D0
  475. 0000045C  6000 0122                bra        +0x124 /* 00000580 */
  476. label00000460:
  477. 00000460  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  478. 00000464  2068 0004                movea.l    A0, [A0 + 0x4]
  479. 00000468  302D FED2                move.w     D0, [A5 - 0x12E]
  480. 0000046C  B050                     cmp.w      D0, [A0]
  481. 0000046E  670C                     beq        +0xE /* 0000047C */
  482. 00000470  2F3C 8000 0000           move.l     -[A7], 0x80000000
  483. 00000476  4EBA 013C                jsr        [PC + 0x13C /* 000005B4 */]
  484. 0000047A  584F                     addq.w     A7, 4
  485. label0000047C:
  486. 0000047C  41ED FED2                lea.l      A0, [A5 - 0x12E]
  487. 00000480  2278 0316                movea.l    A1, [0x00000316 /* HpChk/MacPgm */]
  488. 00000484  2269 0004                movea.l    A1, [A1 + 0x4]
  489. 00000488  2348 0024                move.l     [A1 + 0x24], A0
  490. 0000048C  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  491. 00000490  2B68 0004 FEF6           move.l     [A5 - 0x10A], [A0 + 0x4]
  492. 00000496  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  493. 0000049A  2068 0004                movea.l    A0, [A0 + 0x4]
  494. 0000049E  2B68 0002 FED4           move.l     [A5 - 0x12C], [A0 + 0x2]
  495. 000004A4  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  496. 000004A8  2068 0004                movea.l    A0, [A0 + 0x4]
  497. 000004AC  2B68 0006 FED8           move.l     [A5 - 0x128], [A0 + 0x6]
  498. 000004B2  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  499. 000004B6  2068 0004                movea.l    A0, [A0 + 0x4]
  500. 000004BA  2B68 000A FEDC           move.l     [A5 - 0x124], [A0 + 0xA]
  501. 000004C0  4A87                     tst.l      D7
  502. 000004C2  672C                     beq        +0x2E /* 000004F0 */
  503. 000004C4  286D FED8                movea.l    A4, [A5 - 0x128]
  504. 000004C8  600C                     bra        +0xE /* 000004D6 */
  505. label000004CA:
  506. 000004CA  598F                     subq.l     A7, 4
  507. 000004CC  2F14                     move.l     -[A7], [A4]
  508. 000004CE  4EBA 05C8                jsr        [PC + 0x5C8 /* 00000A98 */]
  509. 000004D2  584F                     addq.w     A7, 4
  510. 000004D4  584C                     addq.w     A4, 4
  511. label000004D6:
  512. 000004D6  4A94                     tst.l      [A4]
  513. 000004D8  66F0                     bne        -0xE /* 000004CA */
  514. 000004DA  286D FEDC                movea.l    A4, [A5 - 0x124]
  515. 000004DE  600C                     bra        +0xE /* 000004EC */
  516. label000004E0:
  517. 000004E0  598F                     subq.l     A7, 4
  518. 000004E2  2F14                     move.l     -[A7], [A4]
  519. 000004E4  4EBA 05B2                jsr        [PC + 0x5B2 /* 00000A98 */]
  520. 000004E8  584F                     addq.w     A7, 4
  521. 000004EA  584C                     addq.w     A4, 4
  522. label000004EC:
  523. 000004EC  4A94                     tst.l      [A4]
  524. 000004EE  66F0                     bne        -0xE /* 000004E0 */
  525. label000004F0:
  526. 000004F0  200B                     move.l     D0, A3
  527. 000004F2  6704                     beq        +0x6 /* 000004F8 */
  528. 000004F4  26AD FED4                move.l     [A3], [A5 - 0x12C]
  529. label000004F8:
  530. 000004F8  4AAE 0010                tst.l      [A6 + 0x10]
  531. 000004FC  6708                     beq        +0xA /* 00000506 */
  532. 000004FE  206E 0010                movea.l    A0, [A6 + 0x10]
  533. 00000502  20AD FED8                move.l     [A0], [A5 - 0x128]
  534. label00000506:
  535. 00000506  4AAE 0014                tst.l      [A6 + 0x14]
  536. 0000050A  6708                     beq        +0xA /* 00000514 */
  537. 0000050C  206E 0014                movea.l    A0, [A6 + 0x14]
  538. 00000510  20AD FEDC                move.l     [A0], [A5 - 0x124]
  539. label00000514:
  540. 00000514  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  541. 00000518  2068 0004                movea.l    A0, [A0 + 0x4]
  542. 0000051C  4AA8 0020                tst.l      [A0 + 0x20]
  543. 00000520  6754                     beq        +0x56 /* 00000576 */
  544. 00000522  7078                     moveq.l    D0, 0x78
  545. 00000524  A11E                     syscall    NewPtr, flags=1
  546. 00000526  2B48 FEF2                move.l     [A5 - 0x10E], A0
  547. 0000052A  660A                     bne        +0xC /* 00000536 */
  548. 0000052C  7002                     moveq.l    D0, 0x02
  549. 0000052E  2F00                     move.l     -[A7], D0
  550. 00000530  4EBA 0082                jsr        [PC + 0x82 /* 000005B4 */]
  551. 00000534  584F                     addq.w     A7, 4
  552. label00000536:
  553. 00000536  2078 0316                movea.l    A0, [0x00000316 /* HpChk/MacPgm */]
  554. 0000053A  2068 0004                movea.l    A0, [A0 + 0x4]
  555. 0000053E  2668 0020                movea.l    A3, [A0 + 0x20]
  556. 00000542  7E00                     moveq.l    D7, 0x00
  557. 00000544  7605                     moveq.l    D3, 0x05
  558. label00000546:
  559. 00000546  2207                     move.l     D1, D7
  560. 00000548  2001                     move.l     D0, D1
  561. 0000054A  C2FC 0018                mulu.w     D1, 0x18
  562. 0000054E  4840                     swap.w     D0
  563. 00000550  C0FC 0018                mulu.w     D0, 0x18
  564. 00000554  4840                     swap.w     D0
  565. 00000556  4240                     clr.w      D0
  566. 00000558  D280                     add.l      D1, D0
  567. 0000055A  2C01                     move.l     D6, D1
  568. 0000055C  206D FEF2                movea.l    A0, [A5 - 0x10E]
  569. 00000560  43F3 6800                lea.l      A1, [A3 + D6]
  570. 00000564  45F0 6800                lea.l      A2, [A0 + D6]
  571. 00000568  7005                     moveq.l    D0, 0x05
  572. label0000056A:
  573. 0000056A  24D9                     move.l     [A2]+, [A1]+
  574. 0000056C  51C8 FFFC                dbf        D0, -0x6 /* 0000056A */
  575. 00000570  5287                     addq.l     D7, 1
  576. 00000572  B687                     cmp.l      D3, D7
  577. 00000574  6ED0                     bgt        -0x2E /* 00000546 */
  578. label00000576:
  579. 00000576  4EBA FC66                jsr        [PC - 0x39A /* 000001DE */]
  580. 0000057A  7000                     moveq.l    D0, 0x00
  581. 0000057C  2B40 FECE                move.l     [A5 - 0x132], D0
  582. label00000580:
  583. 00000580  4CEE 1CC8 FFE8           movem.l    D3,D6,D7,A2,A3,A4, [A6 - 0x18]
  584. 00000586  4E5E                     unlink     A6
  585. 00000588  4E75                     rts
  586. 0000058A  875F                     or.w       [A7]+, D3
  587. 0000058C  5254                     addq.w     [A4], 1
  588. 0000058E  496E 6974                chk.w      D4, [A6 + 0x6974]
  589. 00000592  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  590. // begin alternate branch 00000594-0000059E
  591. fn00000594:
  592. 00000594  4E56 0000                link       A6, 0
  593. 00000598  203C 00FF FFFF           move.l     D0, 0xFFFFFF
  594. // end alternate branch 00000594-0000059E
  595. fn00000594: // (misaligned)
  596. 00000596  0000 203C                ori.b      D0, 0x3C /* '<' */
  597. 0000059A  00FF                     .incomplete
  598. 0000059C  FFFF                     .invalid   <<F/7/7>>
  599. 0000059E  C0AE 0008                and.l      D0, [A6 + 0x8]
  600. 000005A2  2F00                     move.l     -[A7], D0
  601. 000005A4  4EBA 000E                jsr        [PC + 0xE /* 000005B4 */]
  602. 000005A8  4E5E                     unlink     A6
  603. 000005AA  4E75                     rts
  604. 000005AC  8465                     or.w       D2, -[A5]
  605. 000005AE  7869                     moveq.l    D4, 0x69
  606. 000005B0  7400                     moveq.l    D2, 0x00
  607. 000005B2  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  608. // begin alternate branch 000005B4-000005BA
  609. fn000005B4:
  610. 000005B4  4E56 0000                link       A6, 0
  611. 000005B8  2F0C                     move.l     -[A7], A4
  612. // end alternate branch 000005B4-000005BA
  613. fn000005B4: // (misaligned)
  614. 000005B6  0000 2F0C                ori.b      D0, 0xC
  615. 000005BA  206D FEE8                movea.l    A0, [A5 - 0x118]
  616. 000005BE  49E8 008C                lea.l      A4, [A0 + 0x8C]
  617. 000005C2  600A                     bra        +0xC /* 000005CE */
  618. label000005C4:
  619. 000005C4  4A94                     tst.l      [A4]
  620. 000005C6  6704                     beq        +0x6 /* 000005CC */
  621. 000005C8  2054                     movea.l    A0, [A4]
  622. 000005CA  4E90                     jsr        [A0]
  623. label000005CC:
  624. 000005CC  594C                     subq.w     A4, 4
  625. label000005CE:
  626. 000005CE  206D FEE8                movea.l    A0, [A5 - 0x118]
  627. 000005D2  B1CC                     cmpa.l     A0, A4
  628. 000005D4  65EE                     bcs        -0x10 /* 000005C4 */
  629. 000005D6  4AAD FEF6                tst.l      [A5 - 0x10A]
  630. 000005DA  670A                     beq        +0xC /* 000005E6 */
  631. 000005DC  206D FEF6                movea.l    A0, [A5 - 0x10A]
  632. 000005E0  216E 0008 000E           move.l     [A0 + 0xE], [A6 + 0x8]
  633. label000005E6:
  634. 000005E6  4AAD FFDC                tst.l      [A5 - 0x24]
  635. 000005EA  660A                     bne        +0xC /* 000005F6 */
  636. 000005EC  206D FEE8                movea.l    A0, [A5 - 0x118]
  637. 000005F0  2250                     movea.l    A1, [A0]
  638. 000005F2  4E91                     jsr        [A1]
  639. 000005F4  600E                     bra        +0x10 /* 00000604 */
  640. label000005F6:
  641. 000005F6  7001                     moveq.l    D0, 0x01
  642. 000005F8  2F00                     move.l     -[A7], D0
  643. 000005FA  486D FFC4                pea.l      [A5 - 0x3C]
  644. 000005FE  4EBA FBCC                jsr        [PC - 0x434 /* 000001CC */]
  645. 00000602  504F                     addq.w     A7, 8
  646. label00000604:
  647. 00000604  286E FFFC                movea.l    A4, [A6 - 0x4]
  648. 00000608  4E5E                     unlink     A6
  649. 0000060A  4E75                     rts
  650. 0000060C  875F                     or.w       [A7]+, D3
  651. 0000060E  5254                     addq.w     [A4], 1
  652. 00000610  4578 6974                chk.w      D2, [0x00006974]
  653. 00000614  0000 2057                ori.b      D0, 0x57 /* 'W' */
  654. export_0: // at 00000616 (misaligned)
  655. 00000618  42A7                     clr.l      -[A7]
  656. 0000061A  486D FFFC                pea.l      [A5 - 0x4]
  657. 0000061E  486D FFF8                pea.l      [A5 - 0x8]
  658. 00000622  486D FFF4                pea.l      [A5 - 0xC]
  659. 00000626  2F08                     move.l     -[A7], A0
  660. 00000628  4EBA FD72                jsr        [PC - 0x28E /* 0000039C */]
  661. 0000062C  72FF                     moveq.l    D1, 0xFFFFFFFF
  662. 0000062E  B041                     cmp.w      D0, D1
  663. 00000630  672E                     beq        +0x30 /* 00000660 */
  664. 00000632  588F                     addq.l     A7, 4
  665. 00000634  4FEF 0010                lea.l      A7, [A7 + 0x10]
  666. 00000638  486D FFC4                pea.l      [A5 - 0x3C]
  667. 0000063C  4EBA FB82                jsr        [PC - 0x47E /* 000001C0 */]
  668. 00000640  584F                     addq.w     A7, 4
  669. 00000642  4A80                     tst.l      D0
  670. 00000644  6624                     bne        +0x26 /* 0000066A */
  671. 00000646  2F2D FFFC                move.l     -[A7], [A5 - 0x4]
  672. 0000064A  2F2D FFF8                move.l     -[A7], [A5 - 0x8]
  673. 0000064E  2F2D FFF4                move.l     -[A7], [A5 - 0xC]
  674. 00000652  4EBA F9AC                jsr        [PC - 0x654 /* 00000000 */]
  675. 00000656  4FEF 000C                lea.l      A7, [A7 + 0xC]
  676. 0000065A  2F00                     move.l     -[A7], D0
  677. 0000065C  4EBA FF36                jsr        [PC - 0xCA /* 00000594 */]
  678. label00000660:
  679. 00000660  487A 000A                pea.l      [PC + 0xA /* 0000066C, value 0x1B446174, pstring "Data initialization failed!" */]
  680. 00000664  303C FE15                move.w     D0, 0xFE15
  681. 00000668  A9C9                     syscall    SysError
  682. label0000066A:
  683. 0000066A  4E75                     rts
  684. 0000066C  1B44 6174                move.b     [A5 + 0x6174], D4
  685. 00000670  6120                     bsr        +0x22 /* 00000692 */
  686. 00000672  696E                     bvs        +0x70 /* 000006E2 */
  687. 00000674  6974                     bvs        +0x76 /* 000006EA */
  688. 00000676  6961                     bvs        +0x63 /* 000006D9 */
  689. 00000678  6C69                     bge        +0x6B /* 000006E3 */
  690. 0000067A  7A61                     moveq.l    D5, 0x61
  691. 0000067C  7469                     moveq.l    D2, 0x69
  692. 0000067E  6F6E                     ble        +0x70 /* 000006EE */
  693. 00000680  2066                     movea.l    A0, -[A6]
  694. 00000682  6169                     bsr        +0x6B /* 000006ED */
  695. 00000684  6C65                     bge        +0x67 /* 000006EB */
  696. 00000686  6421                     bcc        +0x23 /* 000006A9 */
  697. fn00000688:
  698. 00000688  48E7 7FF8                movem.l    -[A7], D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4
  699. 0000068C  49FA 045C                lea.l      A4, [PC + 0x45C /* 00000AEA, value 0x20A, cstring "" */]
  700. 00000690  302C 0004                move.w     D0, [A4 + 0x4]
  701. // begin alternate branch 00000692-00000696
  702. fn00000692:
  703. 00000692  0004 5340                ori.b      D4, 0x40 /* '@' */
  704. // end alternate branch 00000692-00000696
  705. fn00000692: // (misaligned)
  706. 00000694  5340                     subq.w     D0, 1
  707. 00000696  6704                     beq        +0x6 /* 0000069C */
  708. 00000698  70FF                     moveq.l    D0, 0xFFFFFFFF
  709. 0000069A  6032                     bra        +0x34 /* 000006CE */
  710. label0000069C:
  711. 0000069C  264D                     movea.l    A3, A5
  712. 0000069E  97D4                     sub.l      A3, [A4]
  713. 000006A0  2F0B                     move.l     -[A7], A3
  714. 000006A2  2F14                     move.l     -[A7], [A4]
  715. 000006A4  6100 014C                bsr        +0x14E /* 000007F2 */
  716. 000006A8  202C 0008                move.l     D0, [A4 + 0x8]
  717. 000006AC  4874 0800                pea.l      [A4 + D0]
  718. 000006B0  2F0B                     move.l     -[A7], A3
  719. 000006B2  6100 002E                bsr        +0x30 /* 000006E2 */
  720. 000006B6  504F                     addq.w     A7, 8
  721. 000006B8  202C 000C                move.l     D0, [A4 + 0xC]
  722. 000006BC  4874 0800                pea.l      [A4 + D0]
  723. 000006C0  2F0B                     move.l     -[A7], A3
  724. 000006C2  2F0D                     move.l     -[A7], A5
  725. 000006C4  6100 00D0                bsr        +0xD2 /* 00000796 */
  726. 000006C8  4FEF 000C                lea.l      A7, [A7 + 0xC]
  727. 000006CC  7000                     moveq.l    D0, 0x00
  728. label000006CE:
  729. 000006CE  4CDF 1FFE                movem.l    D1,D2,D3,D4,D5,D6,D7,A0,A1,A2,A3,A4, [A7]+
  730. 000006D2  4E75                     rts
  731. 000006D4  8009                     or.b       D0, A1
  732. 000006D6  5F44                     subq.w     D4, 7
  733. 000006D8  4154                     chk.w      D0, [A4]
  734. 000006DA  4149                     chk.w      D0, A1
  735. 000006DC  4E49                     trap       9
  736. 000006DE  5400                     addq.b     D0, 2
  737. 000006E0  0000 226F                ori.b      D0, 0x6F /* 'o' */
  738. // begin alternate branch 000006E2-000006EE
  739. fn000006E2:
  740. 000006E2  226F 0004                movea.l    A1, [A7 + 0x4]
  741. 000006E6  206F 0008                movea.l    A0, [A7 + 0x8]
  742. label000006EA:
  743. 000006EA  48E7 1800                movem.l    -[A7], D3,D4
  744. // end alternate branch 000006E2-000006EE
  745. fn000006E2: // (misaligned)
  746. 000006E4  0004 206F                ori.b      D4, 0x6F /* 'o' */
  747. 000006E8  0008 48E7                ori.b      A0, 0xE7
  748. label000006EA: // (misaligned)
  749. 000006EC  1800                     move.b     D4, D0
  750. label000006EE:
  751. 000006EE  7601                     moveq.l    D3, 0x01
  752. 000006F0  7200                     moveq.l    D1, 0x00
  753. 000006F2  1218                     move.b     D1, [A0]+
  754. 000006F4  2401                     move.l     D2, D1
  755. 000006F6  0241 000F                andi.w     D1, 0xF
  756. 000006FA  660A                     bne        +0xC /* 00000706 */
  757. 000006FC  6100 0044                bsr        +0x46 /* 00000742 */
  758. 00000700  2200                     move.l     D1, D0
  759. 00000702  6724                     beq        +0x26 /* 00000728 */
  760. 00000704  6002                     bra        +0x4 /* 00000708 */
  761. label00000706:
  762. 00000706  D241                     add.w      D1, D1
  763. label00000708:
  764. 00000708  0242 00F0                andi.w     D2, 0xF0
  765. 0000070C  6608                     bne        +0xA /* 00000716 */
  766. 0000070E  6100 0032                bsr        +0x34 /* 00000742 */
  767. 00000712  2400                     move.l     D2, D0
  768. 00000714  6002                     bra        +0x4 /* 00000718 */
  769. label00000716:
  770. 00000716  E64A                     lsr        D2.w, 3
  771. label00000718:
  772. 00000718  D3C2                     add.l      A1, D2
  773. 0000071A  2801                     move.l     D4, D1
  774. label0000071C:
  775. 0000071C  12D8                     move.b     [A1]+, [A0]+
  776. 0000071E  5384                     subq.l     D4, 1
  777. 00000720  66FA                     bne        -0x4 /* 0000071C */
  778. 00000722  5383                     subq.l     D3, 1
  779. 00000724  66F2                     bne        -0xC /* 00000718 */
  780. 00000726  60C6                     bra        -0x38 /* 000006EE */
  781. label00000728:
  782. 00000728  4CDF 0018                movem.l    D3,D4, [A7]+
  783. 0000072C  4E75                     rts
  784. 0000072E  8010                     or.b       D0, [A0]
  785. 00000730  756E                     moveq.l    D2, 0x6E
  786. 00000732  636F                     bls        +0x71 /* 000007A3 */
  787. 00000734  6D70                     blt        +0x72 /* 000007A6 */
  788. 00000736  7265                     moveq.l    D1, 0x65
  789. 00000738  7373                     moveq.l    D1, 0x73
  790. 0000073A  5F77 6F72 6C64 0000 7000 subq.w     [[A7 + 0x6C640000] + 0x7000], 7
  791. // begin alternate branch 00000742-00000744
  792. fn00000742:
  793. 00000742  7000                     moveq.l    D0, 0x00
  794. // end alternate branch 00000742-00000744
  795. fn00000742: // (misaligned)
  796. 00000744  1018                     move.b     D0, [A0]+
  797. 00000746  6A42                     bpl        +0x44 /* 0000078A */
  798. 00000748  0800 0006                btst.b     D0, 0x6
  799. 0000074C  6734                     beq        +0x36 /* 00000782 */
  800. 0000074E  0800 0005                btst.b     D0, 0x5
  801. 00000752  6720                     beq        +0x22 /* 00000774 */
  802. 00000754  0800 0004                btst.b     D0, 0x4
  803. 00000758  670A                     beq        +0xC /* 00000764 */
  804. 0000075A  61E6                     bsr        -0x18 /* 00000742 */
  805. 0000075C  2600                     move.l     D3, D0
  806. 0000075E  61E2                     bsr        -0x1C /* 00000742 */
  807. 00000760  C143                     exg        D0, D3
  808. 00000762  4E75                     rts
  809. label00000764:
  810. 00000764  1018                     move.b     D0, [A0]+
  811. 00000766  E180                     asl        D0, 8
  812. 00000768  1018                     move.b     D0, [A0]+
  813. 0000076A  E180                     asl        D0, 8
  814. 0000076C  1018                     move.b     D0, [A0]+
  815. 0000076E  E180                     asl        D0, 8
  816. 00000770  1018                     move.b     D0, [A0]+
  817. 00000772  4E75                     rts
  818. label00000774:
  819. 00000774  0200 001F                andi.b     D0, 0x1F
  820. 00000778  E180                     asl        D0, 8
  821. 0000077A  1018                     move.b     D0, [A0]+
  822. 0000077C  E180                     asl        D0, 8
  823. 0000077E  1018                     move.b     D0, [A0]+
  824. 00000780  4E75                     rts
  825. label00000782:
  826. 00000782  0200 003F                andi.b     D0, 0x3F /* '?' */
  827. 00000786  E180                     asl        D0, 8
  828. 00000788  1018                     move.b     D0, [A0]+
  829. label0000078A:
  830. 0000078A  4E75                     rts
  831. 0000078C  8006                     or.b       D0, D6
  832. 0000078E  6765                     beq        +0x67 /* 000007F5 */
  833. 00000790  745F                     moveq.l    D2, 0x5F
  834. 00000792  726C                     moveq.l    D1, 0x6C
  835. 00000794  0000 222F                ori.b      D0, 0x2F /* '/' */
  836. // begin alternate branch 00000796-000007A4
  837. fn00000796:
  838. 00000796  222F 0004                move.l     D1, [A7 + 0x4]
  839. 0000079A  226F 0008                movea.l    A1, [A7 + 0x8]
  840. 0000079E  206F 000C                movea.l    A0, [A7 + 0xC]
  841. label000007A2:
  842. 000007A2  7401                     moveq.l    D2, 0x01
  843. // end alternate branch 00000796-000007A4
  844. fn00000796: // (misaligned)
  845. 00000798  0004 226F                ori.b      D4, 0x6F /* 'o' */
  846. 0000079C  0008 206F                ori.b      A0, 0x6F /* 'o' */
  847. 000007A0  000C 7401                ori.b      A4, 0x1
  848. label000007A2: // (misaligned)
  849. 000007A4  7000                     moveq.l    D0, 0x00
  850. label000007A6:
  851. 000007A6  1018                     move.b     D0, [A0]+
  852. 000007A8  670C                     beq        +0xE /* 000007B6 */
  853. 000007AA  6A26                     bpl        +0x28 /* 000007D2 */
  854. 000007AC  0880 0007                bclr.b     D0, 0x7
  855. 000007B0  E188                     lsl        D0, 8
  856. 000007B2  1018                     move.b     D0, [A0]+
  857. 000007B4  601C                     bra        +0x1E /* 000007D2 */
  858. label000007B6:
  859. 000007B6  1018                     move.b     D0, [A0]+
  860. 000007B8  6724                     beq        +0x26 /* 000007DE */
  861. 000007BA  6A0E                     bpl        +0x10 /* 000007CA */
  862. 000007BC  E188                     lsl        D0, 8
  863. 000007BE  1018                     move.b     D0, [A0]+
  864. 000007C0  E188                     lsl        D0, 8
  865. 000007C2  1018                     move.b     D0, [A0]+
  866. 000007C4  E188                     lsl        D0, 8
  867. 000007C6  1018                     move.b     D0, [A0]+
  868. 000007C8  6008                     bra        +0xA /* 000007D2 */
  869. label000007CA:
  870. 000007CA  2400                     move.l     D2, D0
  871. 000007CC  6100 FF74                bsr        -0x8A /* 00000742 */
  872. 000007D0  C142                     exg        D0, D2
  873. label000007D2:
  874. 000007D2  D080                     add.l      D0, D0
  875. label000007D4:
  876. 000007D4  D3C0                     add.l      A1, D0
  877. 000007D6  D391                     add.l      [A1], D1
  878. 000007D8  5382                     subq.l     D2, 1
  879. 000007DA  66F8                     bne        -0x6 /* 000007D4 */
  880. 000007DC  60C4                     bra        -0x3A /* 000007A2 */
  881. label000007DE:
  882. 000007DE  4E75                     rts
  883. 000007E0  800E                     or.b       D0, A6
  884. 000007E2  7265                     moveq.l    D1, 0x65
  885. 000007E4  6C6F                     bge        +0x71 /* 00000855 */
  886. 000007E6  6361                     bls        +0x63 /* 00000849 */
  887. 000007E8  7465                     moveq.l    D2, 0x65
  888. 000007EA  5F77 6F72 6C64 0000 7400 subq.w     [[A7 + 0x6C640000] + 0x7400], 7
  889. // begin alternate branch 000007F2-000007F4
  890. fn000007F2:
  891. 000007F2  7400                     moveq.l    D2, 0x00
  892. // end alternate branch 000007F2-000007F4
  893. fn000007F2: // (misaligned)
  894. 000007F4  205F                     movea.l    A0, [A7]+
  895. 000007F6  201F                     move.l     D0, [A7]+
  896. 000007F8  225F                     movea.l    A1, [A7]+
  897. 000007FA  6728                     beq        +0x2A /* 00000824 */
  898. label000007FC:
  899. 000007FC  3209                     move.w     D1, A1
  900. 000007FE  0241 0003                andi.w     D1, 0x3
  901. 00000802  6708                     beq        +0xA /* 0000080C */
  902. 00000804  12C2                     move.b     [A1]+, D2
  903. 00000806  5380                     subq.l     D0, 1
  904. 00000808  66F2                     bne        -0xC /* 000007FC */
  905. 0000080A  6018                     bra        +0x1A /* 00000824 */
  906. label0000080C:
  907. 0000080C  2200                     move.l     D1, D0
  908. 0000080E  E489                     lsr        D1, 2
  909. 00000810  6706                     beq        +0x8 /* 00000818 */
  910. label00000812:
  911. 00000812  22C2                     move.l     [A1]+, D2
  912. 00000814  5381                     subq.l     D1, 1
  913. 00000816  66FA                     bne        -0x4 /* 00000812 */
  914. label00000818:
  915. 00000818  0240 0003                andi.w     D0, 0x3
  916. 0000081C  6002                     bra        +0x4 /* 00000820 */
  917. label0000081E:
  918. 0000081E  12C2                     move.b     [A1]+, D2
  919. label00000820:
  920. 00000820  51C8 FFFC                dbf        D0, -0x6 /* 0000081E */
  921. label00000824:
  922. 00000824  4ED0                     jmp        [A0]
  923. 00000826  800A                     or.b       D0, A2
  924. 00000828  5A45                     addq.w     D5, 5
  925. 0000082A  524F                     addq.w     A7, 1
  926. 0000082C  4255                     clr.w      [A5]
  927. 0000082E  4646                     not.w      D6
  928. 00000830  4552                     chk.w      D2, [A2]
  929. 00000832  0000 0000                ori.b      D0, 0x0
  930. fn00000836:
  931. 00000836  225F                     movea.l    A1, [A7]+
  932. 00000838  205F                     movea.l    A0, [A7]+
  933. 0000083A  A025                     syscall    GetHandleSize
  934. 0000083C  2E80                     move.l     [A7], D0
  935. 0000083E  6A02                     bpl        +0x4 /* 00000842 */
  936. 00000840  4297                     clr.l      [A7]
  937. label00000842:
  938. 00000842  4ED1                     jmp        [A1]
  939. fn00000844:
  940. 00000844  4E56 0000                link       A6, 0
  941. 00000848  594F                     subq.w     A7, 4
  942. 0000084A  2F3C 5354 5223           move.l     -[A7], 0x53545223 /* 'STR#' */
  943. 00000850  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  944. 00000854  A9A0                     syscall    GetResource
  945. 00000856  226E 000C                movea.l    A1, [A6 + 0xC]
  946. 0000085A  4211                     clr.b      [A1]
  947. 0000085C  201F                     move.l     D0, [A7]+
  948. 0000085E  6722                     beq        +0x24 /* 00000882 */
  949. 00000860  2040                     movea.l    A0, D0
  950. 00000862  2050                     movea.l    A0, [A0]
  951. 00000864  3018                     move.w     D0, [A0]+
  952. 00000866  322E 0008                move.w     D1, [A6 + 0x8]
  953. 0000086A  6716                     beq        +0x18 /* 00000882 */
  954. 0000086C  B240                     cmp.w      D1, D0
  955. 0000086E  6212                     bhi        +0x14 /* 00000882 */
  956. 00000870  7000                     moveq.l    D0, 0x00
  957. label00000872:
  958. 00000872  5341                     subq.w     D1, 1
  959. 00000874  6706                     beq        +0x8 /* 0000087C */
  960. 00000876  1018                     move.b     D0, [A0]+
  961. 00000878  D1C0                     add.l      A0, D0
  962. 0000087A  60F6                     bra        -0x8 /* 00000872 */
  963. label0000087C:
  964. 0000087C  1010                     move.b     D0, [A0]
  965. 0000087E  5240                     addq.w     D0, 1
  966. 00000880  A02E                     syscall    BlockMove/BlockMoveData
  967. label00000882:
  968. 00000882  4E5E                     unlink     A6
  969. 00000884  205F                     movea.l    A0, [A7]+
  970. 00000886  508F                     addq.l     A7, 8
  971. 00000888  4ED0                     jmp        [A0]
  972. fn0000088A:
  973. 0000088A  4E56 0000                link       A6, 0
  974. 0000088E  203C 0000 A89F           move.l     D0, 0xA89F
  975. 00000894  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  976. 00000896  2F08                     move.l     -[A7], A0
  977. 00000898  203C 0000 A0AD           move.l     D0, 0xA0AD
  978. 0000089E  A346                     syscall    GetOSTrapAddress, flags=3
  979. 000008A0  B1DF                     cmpa.l     A0, [A7]+
  980. 000008A2  670E                     beq        +0x10 /* 000008B2 */
  981. 000008A4  202E 000C                move.l     D0, [A6 + 0xC]
  982. 000008A8  A1AD                     syscall    Gestalt, flags=1
  983. 000008AA  226E 0008                movea.l    A1, [A6 + 0x8]
  984. 000008AE  2288                     move.l     [A1], A0
  985. 000008B0  6026                     bra        +0x28 /* 000008D8 */
  986. label000008B2:
  987. 000008B2  41FA 0036                lea.l      A0, [PC + 0x36 /* 000008EA, value 0x76657273 'vers', cstring "vers" */]
  988. 000008B6  303C EA51                move.w     D0, 0xEA51
  989. 000008BA  222E 000C                move.l     D1, [A6 + 0xC]
  990. label000008BE:
  991. 000008BE  B298                     cmp.l      D1, [A0]+
  992. 000008C0  6706                     beq        +0x8 /* 000008C8 */
  993. 000008C2  4A98                     tst.l      [A0]+
  994. 000008C4  6712                     beq        +0x14 /* 000008D8 */
  995. 000008C6  60F6                     bra        -0x8 /* 000008BE */
  996. label000008C8:
  997. 000008C8  43FA 0020                lea.l      A1, [PC + 0x20 /* 000008EA, value 0x76657273 'vers', cstring "vers" */]
  998. 000008CC  D3D0                     add.l      A1, [A0]
  999. 000008CE  4ED1                     jmp        [A1]
  1000. label000008D0:
  1001. 000008D0  226E 0008                movea.l    A1, [A6 + 0x8]
  1002. 000008D4  2280                     move.l     [A1], D0
  1003. 000008D6  4240                     clr.w      D0
  1004. label000008D8:
  1005. 000008D8  3D40 0010                move.w     [A6 + 0x10], D0
  1006. 000008DC  4E5E                     unlink     A6
  1007. 000008DE  205F                     movea.l    A0, [A7]+
  1008. 000008E0  508F                     addq.l     A7, 8
  1009. 000008E2  4ED0                     jmp        [A0]
  1010. label000008E4:
  1011. 000008E4  303C EA52                move.w     D0, 0xEA52
  1012. 000008E8  60EE                     bra        -0x10 /* 000008D8 */
  1013. 000008EA  7665                     moveq.l    D3, 0x65
  1014. 000008EC  7273                     moveq.l    D1, 0x73
  1015. 000008EE  0000 0060                ori.b      D0, 0x60 /* '`' */
  1016. 000008F2  6D61                     blt        +0x63 /* 00000955 */
  1017. 000008F4  6368                     bls        +0x6A /* 0000095E */
  1018. 000008F6  0000 0064                ori.b      D0, 0x64 /* 'd' */
  1019. 000008FA  7379                     moveq.l    D1, 0x79
  1020. 000008FC  7376                     moveq.l    D1, 0x76
  1021. 000008FE  0000 0088                ori.b      D0, 0x88
  1022. 00000902  7072                     moveq.l    D0, 0x72
  1023. 00000904  6F63                     ble        +0x65 /* 00000969 */
  1024. 00000906  0000 0092                ori.b      D0, 0x92
  1025. 0000090A  6670                     bne        +0x72 /* 0000097C */
  1026. 0000090C  7520                     moveq.l    D2, 0x20
  1027. 0000090E  0000 009E                ori.b      D0, 0x9E
  1028. 00000912  7164                     moveq.l    D0, 0x64
  1029. 00000914  2020                     move.l     D0, -[A0]
  1030. 00000916  0000 00E8                ori.b      D0, 0xE8
  1031. 0000091A  6B62                     bmi        +0x64 /* 0000097E */
  1032. 0000091C  6420                     bcc        +0x22 /* 0000093E */
  1033. 0000091E  0000 011A                ori.b      D0, 0x1A
  1034. 00000922  6174                     bsr        +0x76 /* 00000998 */
  1035. 00000924  6C6B                     bge        +0x6D /* 00000991 */
  1036. 00000926  0000 0142                ori.b      D0, 0x42 /* 'B' */
  1037. 0000092A  6D6D                     blt        +0x6F /* 00000999 */
  1038. 0000092C  7520                     moveq.l    D2, 0x20
  1039. 0000092E  0000 0164                ori.b      D0, 0x64 /* 'd' */
  1040. 00000932  7261                     moveq.l    D1, 0x61
  1041. 00000934  6D20                     blt        +0x22 /* 00000956 */
  1042. 00000936  0000 0188                ori.b      D0, 0x88
  1043. 0000093A  6C72                     bge        +0x74 /* 000009AE */
  1044. 0000093C  616D                     bsr        +0x6F /* 000009AB */
  1045. label0000093E:
  1046. 0000093E  0000 0188                ori.b      D0, 0x88
  1047. 00000942  0000 0000                ori.b      D0, 0x0
  1048. 00000946  0000 0000                ori.b      D0, 0x0
  1049. 0000094A  7001                     moveq.l    D0, 0x01
  1050. 0000094C  6082                     bra        -0x7C /* 000008D0 */
  1051. 0000094E  2278 02AE                movea.l    A1, [0x000002AE /* ROMBase */]
  1052. 00000952  7004                     moveq.l    D0, 0x04
  1053. 00000954  0C69 0075 0008           cmpi.w     [A1 + 0x8], 0x75 /* 'u' */
  1054. // begin alternate branch 00000956-0000095E
  1055. label00000956:
  1056. 00000956  0075 0008 6712 0C69      ori.w      [[A5 + D6 * 8] + 0xC69], 0x8
  1057. // end alternate branch 00000956-0000095E
  1058. label00000956: // (misaligned)
  1059. 0000095A  6712                     beq        +0x14 /* 0000096E */
  1060. 0000095C  0C69 0276 0008           cmpi.w     [A1 + 0x8], 0x276
  1061. // begin alternate branch 0000095E-00000964
  1062. label0000095E:
  1063. 0000095E  0276 0008 6604           andi.w     [A6 + D6.w * 8 + 0x4], 0x8
  1064. // end alternate branch 0000095E-00000964
  1065. label0000095E: // (misaligned)
  1066. 00000962  6604                     bne        +0x6 /* 00000968 */
  1067. 00000964  5240                     addq.w     D0, 1
  1068. 00000966  6006                     bra        +0x8 /* 0000096E */
  1069. label00000968:
  1070. 00000968  1038 0CB3                move.b     D0, [0x00000CB3 /* MMUFluff/MachineType */]
  1071. 0000096C  5C80                     addq.l     D0, 6
  1072. label0000096E:
  1073. 0000096E  6000 FF60                bra        -0x9E /* 000008D0 */
  1074. 00000972  7000                     moveq.l    D0, 0x00
  1075. 00000974  3038 015A                move.w     D0, [0x0000015A /* SysVersion */]
  1076. 00000978  6000 FF56                bra        -0xA8 /* 000008D0 */
  1077. label0000097C:
  1078. 0000097C  7000                     moveq.l    D0, 0x00
  1079. label0000097E:
  1080. 0000097E  1038 012F                move.b     D0, [0x0000012F /* CPUFlag */]
  1081. 00000982  5240                     addq.w     D0, 1
  1082. 00000984  6000 FF4A                bra        -0xB4 /* 000008D0 */
  1083. 00000988  0C38 0004 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x4
  1084. 0000098E  6738                     beq        +0x3A /* 000009C8 */
  1085. 00000990  0838 0004 0B22           btst.b     [0x00000B22 /* HWCfgFlags */], 0x4
  1086. 00000996  6734                     beq        +0x36 /* 000009CC */
  1087. fn00000998:
  1088. 00000998  204F                     movea.l    A0, A7
  1089. 0000099A  F280 0000                fnop
  1090. 0000099E  F327                     .extension 0x327 <<F/4-5/1>> // unimplemented
  1091. 000009A0  3017                     move.w     D0, [A7]
  1092. 000009A2  2E48                     movea.l    A7, A0
  1093. 000009A4  0C40 1F18                cmpi.w     D0, 0x1F18
  1094. 000009A8  6716                     beq        +0x18 /* 000009C0 */
  1095. 000009AA  0C40 3F18                cmpi.w     D0, 0x3F18
  1096. label000009AE:
  1097. 000009AE  6710                     beq        +0x12 /* 000009C0 */
  1098. 000009B0  0C40 3F38                cmpi.w     D0, 0x3F38 /* '?8' */
  1099. 000009B4  670E                     beq        +0x10 /* 000009C4 */
  1100. 000009B6  0C40 1F38                cmpi.w     D0, 0x1F38
  1101. 000009BA  6708                     beq        +0xA /* 000009C4 */
  1102. 000009BC  7000                     moveq.l    D0, 0x00
  1103. 000009BE  600E                     bra        +0x10 /* 000009CE */
  1104. label000009C0:
  1105. 000009C0  7001                     moveq.l    D0, 0x01
  1106. 000009C2  600A                     bra        +0xC /* 000009CE */
  1107. label000009C4:
  1108. 000009C4  7002                     moveq.l    D0, 0x02
  1109. 000009C6  6006                     bra        +0x8 /* 000009CE */
  1110. label000009C8:
  1111. 000009C8  7003                     moveq.l    D0, 0x03
  1112. 000009CA  6002                     bra        +0x4 /* 000009CE */
  1113. label000009CC:
  1114. 000009CC  7000                     moveq.l    D0, 0x00
  1115. label000009CE:
  1116. 000009CE  6000 FF00                bra        -0xFE /* 000008D0 */
  1117. 000009D2  0C78 3FFF 028E           cmpi.w     [0x0000028E /* ROM85 */], 0x3FFF
  1118. 000009D8  6E1C                     bgt        +0x1E /* 000009F6 */
  1119. 000009DA  303C A89F                move.w     D0, 0xA89F
  1120. 000009DE  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  1121. 000009E0  2408                     move.l     D2, A0
  1122. 000009E2  203C 0000 AB03           move.l     D0, 0xAB03
  1123. 000009E8  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  1124. 000009EA  203C 0000 0100           move.l     D0, 0x100
  1125. 000009F0  B488                     cmp.l      D2, A0
  1126. 000009F2  6606                     bne        +0x8 /* 000009FA */
  1127. 000009F4  600A                     bra        +0xC /* 00000A00 */
  1128. label000009F6:
  1129. 000009F6  7000                     moveq.l    D0, 0x00
  1130. 000009F8  6006                     bra        +0x8 /* 00000A00 */
  1131. label000009FA:
  1132. 000009FA  203C 0000 0200           move.l     D0, 0x200
  1133. label00000A00:
  1134. 00000A00  6000 FECE                bra        -0x130 /* 000008D0 */
  1135. 00000A04  1038 021E                move.b     D0, [0x0000021E /* KbdType */]
  1136. 00000A08  41FA 0016                lea.l      A0, [PC + 0x16 /* 00000A20, value 0x3130B02 */]
  1137. 00000A0C  2248                     movea.l    A1, A0
  1138. label00000A0E:
  1139. 00000A0E  1218                     move.b     D1, [A0]+
  1140. 00000A10  6700 FED2                beq        -0x12C /* 000008E4 */
  1141. 00000A14  B200                     cmp.b      D1, D0
  1142. 00000A16  66F6                     bne        -0x8 /* 00000A0E */
  1143. 00000A18  91C9                     sub.l      A0, A1
  1144. 00000A1A  2008                     move.l     D0, A0
  1145. 00000A1C  6000 FEB2                bra        -0x14C /* 000008D0 */
  1146. 00000A20  0313                     btst       [A3], D1
  1147. 00000A22  0B02                     btst       D2, D5
  1148. 00000A24  0106                     btst       D6, D0
  1149. 00000A26  0704                     btst       D4, D3
  1150. 00000A28  0508                     btst       A0, D2
  1151. 00000A2A  0900                     btst       D0, D4
  1152. 00000A2C  7000                     moveq.l    D0, 0x00
  1153. 00000A2E  4A38 0291                tst.b      [0x00000291 /* PortBUse */]
  1154. 00000A32  6B16                     bmi        +0x18 /* 00000A4A */
  1155. 00000A34  1238 01FB                move.b     D1, [0x000001FB /* SPConfig */]
  1156. 00000A38  0201 000F                andi.b     D1, 0xF
  1157. 00000A3C  0C01 0001                cmpi.b     D1, 0x1
  1158. 00000A40  6608                     bne        +0xA /* 00000A4A */
  1159. 00000A42  2078 02DC                movea.l    A0, [0x000002DC /* ABusDCE */]
  1160. 00000A46  1028 0007                move.b     D0, [A0 + 0x7]
  1161. label00000A4A:
  1162. 00000A4A  6000 FE84                bra        -0x17A /* 000008D0 */
  1163. 00000A4E  0C38 0002 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x2
  1164. 00000A54  6D16                     blt        +0x18 /* 00000A6C */
  1165. 00000A56  7000                     moveq.l    D0, 0x00
  1166. 00000A58  1038 0CB1                move.b     D0, [0x00000CB1 /* MMUType */]
  1167. 00000A5C  0C00 0001                cmpi.b     D0, 0x1
  1168. 00000A60  670C                     beq        +0xE /* 00000A6E */
  1169. 00000A62  0C00 0003                cmpi.b     D0, 0x3
  1170. 00000A66  6D04                     blt        +0x6 /* 00000A6C */
  1171. 00000A68  5340                     subq.w     D0, 1
  1172. 00000A6A  6002                     bra        +0x4 /* 00000A6E */
  1173. label00000A6C:
  1174. 00000A6C  7000                     moveq.l    D0, 0x00
  1175. label00000A6E:
  1176. 00000A6E  6000 FE60                bra        -0x19E /* 000008D0 */
  1177. 00000A72  303C A89F                move.w     D0, 0xA89F
  1178. 00000A76  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  1179. 00000A78  2408                     move.l     D2, A0
  1180. 00000A7A  203C 0000 A88F           move.l     D0, 0xA88F
  1181. 00000A80  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  1182. 00000A82  2038 0108                move.l     D0, [0x00000108 /* MemTop */]
  1183. 00000A86  B488                     cmp.l      D2, A0
  1184. 00000A88  670A                     beq        +0xC /* 00000A94 */
  1185. 00000A8A  598F                     subq.l     A7, 4
  1186. 00000A8C  3F3C 0016                move.w     -[A7], 0x16
  1187. 00000A90  A88F                     syscall    OSDispatch
  1188. 00000A92  201F                     move.l     D0, [A7]+
  1189. label00000A94:
  1190. 00000A94  6000 FE3A                bra        -0x1C4 /* 000008D0 */
  1191. fn00000A98:
  1192. 00000A98  202F 0004                move.l     D0, [A7 + 0x4]
  1193. 00000A9C  2F40 0008                move.l     [A7 + 0x8], D0
  1194. 00000AA0  6726                     beq        +0x28 /* 00000AC8 */
  1195. 00000AA2  2040                     movea.l    A0, D0
  1196. 00000AA4  2248                     movea.l    A1, A0
  1197. 00000AA6  1019                     move.b     D0, [A1]+
  1198. 00000AA8  671E                     beq        +0x20 /* 00000AC8 */
  1199. label00000AAA:
  1200. 00000AAA  1211                     move.b     D1, [A1]
  1201. 00000AAC  12C0                     move.b     [A1]+, D0
  1202. 00000AAE  1001                     move.b     D0, D1
  1203. 00000AB0  66F8                     bne        -0x6 /* 00000AAA */
  1204. 00000AB2  93C8                     sub.l      A1, A0
  1205. 00000AB4  2009                     move.l     D0, A1
  1206. 00000AB6  5340                     subq.w     D0, 1
  1207. 00000AB8  0C80 0000 00FF           cmpi.l     D0, 0xFF
  1208. 00000ABE  6F06                     ble        +0x8 /* 00000AC6 */
  1209. 00000AC0  203C 0000 00FF           move.l     D0, 0xFF
  1210. label00000AC6:
  1211. 00000AC6  1080                     move.b     [A0], D0
  1212. label00000AC8:
  1213. 00000AC8  225F                     movea.l    A1, [A7]+
  1214. 00000ACA  584F                     addq.w     A7, 4
  1215. 00000ACC  4ED1                     jmp        [A1]
  1216. fn00000ACE:
  1217. 00000ACE  225F                     movea.l    A1, [A7]+
  1218. 00000AD0  201F                     move.l     D0, [A7]+
  1219. 00000AD2  2E80                     move.l     [A7], D0
  1220. 00000AD4  6712                     beq        +0x14 /* 00000AE8 */
  1221. 00000AD6  2040                     movea.l    A0, D0
  1222. 00000AD8  7000                     moveq.l    D0, 0x00
  1223. 00000ADA  1010                     move.b     D0, [A0]
  1224. 00000ADC  6004                     bra        +0x6 /* 00000AE2 */
  1225. label00000ADE:
  1226. 00000ADE  10E8 0001                move.b     [A0]+, [A0 + 0x1]
  1227. label00000AE2:
  1228. 00000AE2  51C8 FFFA                dbf        D0, -0x8 /* 00000ADE */
  1229. 00000AE6  4210                     clr.b      [A0]
  1230. label00000AE8:
  1231. 00000AE8  4ED1                     jmp        [A1]
  1232. 00000AEA  0000 020A                ori.b      D0, 0xA /* '\n' */
  1233. 00000AEE  0001 0000                ori.b      D1, 0x0
  1234. 00000AF2  0000 0014                ori.b      D0, 0x14
  1235. 00000AF6  0000 002E                ori.b      D0, 0x2E /* '.' */
  1236. 00000AFA  0000 0000                ori.b      D0, 0x0
  1237. 00000AFE  0003 80DB                ori.b      D3, 0xDB
  1238. 00000B02  0153                     bchg       [A3], D0
  1239. 00000B04  4820                     nbcd.b     -[A0]
  1240. 00000B06  09FF                     .incomplete
  1241. 00000B08  FFFF                     .invalid   <<F/7/7>>
  1242. 00000B0A  06FF                     .incomplete
  1243. 00000B0C  FFFF                     .invalid   <<F/7/7>>
  1244. 00000B0E  0E81 0207 FFFF           .invalid.l D1, 0x207FFFF // invalid immediate operation
  1245. 00000B14  FF12                     .extension 0xF12 <<F/4-5/7>> // unimplemented
  1246. 00000B16  1000                     move.b     D0, D0
  1247. 00000B18  7102                     moveq.l    D0, 0x02
  1248. 00000B1A  0600 0000                addi.b     D0, 0x0
  1249. 00000B1E  0000 0AEE                ori.b      D0, 0xEE
  1250. 00000B22  6D70                     blt        +0x72 /* 00000B94 */
  1251. 00000B24  7764                     moveq.l    D3, 0x64
  1252.